﻿import { ISysPersonContract } from '/@/views/fileattachment/api/interface'
import { IFileAttachment } from '/@/views/fileattachment/api/interface'
import { ISysGroup } from '/@/views/fileattachment/api/interface'
import { ISysOrg } from '/@/views/fileattachment/api/interface'

export interface ISysHrRenewRequestBill {
  ID?: string | null;
  PersonId: string | null;
  StaffNo: string | null;
  Name: string | null;
  PersonContractId: string | null;
  PersonContract?: ISysPersonContract;
  EmploymentType: number | null;
  ContractType: number | null;
  ContractNo: string | null;
  SignDate: Date | null;
  ExpireDate: Date | null;
  ContractFiles: string | null;
  ContractFile?: IFileAttachment;
  Approver: string | null;
  ApprovalTime: Date | null;
  GroupId: string | null;
  Group?: ISysGroup;
  BillCode: string | null;
  BillStatus: number | null | string;
  WorkflowStatus: number | null | string;
  Remark: string | null
  OrgId: string | null;
  Org?: ISysOrg;    
}

export interface ISysHrRenewRequestBillVm {
  Entity: ISysHrRenewRequestBill;
  ActionName: string | null;
  IsMyApprove: boolean | null;
  Remark: string | null;
  SelectedContractFilesIds: string | null;
}

export interface ISysHrRenewRequestBillView extends ISysHrRenewRequestBill {

  ActionNames?: string;

}

export interface ISysHrRenewRequestBillQuery {
  StaffNo?: string
  Name?: string
  EmploymentType?: number
  ContractType?: number
  ContractNo?: string
  Approver?: string
  ApprovalTime?: Date
  GroupId?: string
  BillCode?: string
  BillStatus?: number
  WorkflowStatus?: number
}